<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>v_hdmitx1: xv_hdmitx1_intr.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="HTML_custom.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="xlogo_bg.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">v_hdmitx1
   </div>
   <div id="projectbrief">Vitis Drivers API Documentation</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Overview</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="globals.html"><span>APIs</span></a></li>
      <li><a href="files.html"><span>File&#160;List</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('xv__hdmitx1__intr_8c.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">xv_hdmitx1_intr.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Overview</h2>
<div class="textblock"><p>This file contains interrupt related functions for Xilinx HDMI TX core. </p>
<p>Please see <a class="el" href="xv__hdmitx1_8h.html" title="This is the main header file for Xilinx HDMI TX core. ">xv_hdmitx1.h</a> for more details of the driver.</p>
<pre>
MODIFICATION HISTORY:</pre><pre>Ver   Who    Date     Changes
</p>
<hr/>
<p>
1.00  EB     22/05/18 Initial release.
</pre> </div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a1fde82d7e35ed99e6842e1f33ba09a3b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xv__hdmitx1__intr_8c.html#a1fde82d7e35ed99e6842e1f33ba09a3b">XV_HdmiTx1_IntrHandler</a> (void *InstancePtr)</td></tr>
<tr class="memdesc:a1fde82d7e35ed99e6842e1f33ba09a3b"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function is the interrupt handler for the HDMI TX driver.  <a href="#a1fde82d7e35ed99e6842e1f33ba09a3b">More...</a><br/></td></tr>
<tr class="separator:a1fde82d7e35ed99e6842e1f33ba09a3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5ebe4123d67f311237f44d4db7fbb99"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xv__hdmitx1__intr_8c.html#ab5ebe4123d67f311237f44d4db7fbb99">XV_HdmiTx1_SetCallback</a> (<a class="el" href="struct_x_v___hdmi_tx1.html">XV_HdmiTx1</a> *InstancePtr, <a class="el" href="xv__hdmitx1_8h.html#af9b30d0cba10a37e4719114fe400ea64">XV_HdmiTx1_HandlerType</a> HandlerType, void *CallbackFunc, void *CallbackRef)</td></tr>
<tr class="memdesc:ab5ebe4123d67f311237f44d4db7fbb99"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function installs an asynchronous callback function for the given HandlerType:  <a href="#ab5ebe4123d67f311237f44d4db7fbb99">More...</a><br/></td></tr>
<tr class="separator:ab5ebe4123d67f311237f44d4db7fbb99"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a1fde82d7e35ed99e6842e1f33ba09a3b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XV_HdmiTx1_IntrHandler </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function is the interrupt handler for the HDMI TX driver. </p>
<p>This handler reads the pending interrupt from PIO and DDC peripheral, determines the source of the interrupts, clears the interrupts and calls callbacks accordingly.</p>
<p>The application is responsible for connecting this function to the interrupt system. Application beyond this driver is also responsible for providing callbacks to handle interrupts and installing the callbacks using <a class="el" href="xv__hdmitx1_8h.html#ab5ebe4123d67f311237f44d4db7fbb99" title="This function installs an asynchronous callback function for the given HandlerType: ...">XV_HdmiTx1_SetCallback()</a> during initialization phase. An example delivered with this driver demonstrates how this could be done.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>is a pointer to the <a class="el" href="struct_x_v___hdmi_tx1.html" title="The XV_HdmiTx1 driver instance data. ">XV_HdmiTx1</a> instance that just interrupted.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>None. </dd></dl>

<p>References <a class="el" href="struct_x_v___hdmi_tx1___config.html#ac9448a4fb60f4bf571da4e1c49bf0056">XV_HdmiTx1_Config::BaseAddress</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a821b6ed4f07983491f150fb061ba224e">XV_HdmiTx1::Config</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#abc4e2c7cd581d8e407d845f1a620d3d8">XV_HdmiTx1::IsReady</a>, <a class="el" href="xv__hdmitx1__hw_8h.html#a7add990341b3e99c486abdb4e730c5e2">XV_HDMITX1_AUX_STA_IRQ_MASK</a>, <a class="el" href="xv__hdmitx1__hw_8h.html#a14dcc9b57dc6ff4a5d43c9df86e54723">XV_HDMITX1_AUX_STA_OFFSET</a>, <a class="el" href="xv__hdmitx1__hw_8h.html#a74458333d15b366f123b04bb3fa44042">XV_HDMITX1_DDC_STA_IRQ_MASK</a>, <a class="el" href="xv__hdmitx1__hw_8h.html#a76a8d1762bfc7aafed3ae667630f47d6">XV_HDMITX1_DDC_STA_OFFSET</a>, <a class="el" href="xv__hdmitx1__hw_8h.html#ad6246682008ba157f08ac24f80294eed">XV_HDMITX1_FRL_STA_IRQ_MASK</a>, <a class="el" href="xv__hdmitx1__hw_8h.html#af69097b14c333e4e03d8934c68e5666a">XV_HDMITX1_FRL_STA_OFFSET</a>, <a class="el" href="xv__hdmitx1__hw_8h.html#ab68b9045690c17f85d3d454f182aaaa4">XV_HDMITX1_PIO_STA_IRQ_MASK</a>, <a class="el" href="xv__hdmitx1__hw_8h.html#aad716fe9cadcb6ad07df46c18b0f67d9">XV_HDMITX1_PIO_STA_OFFSET</a>, and <a class="el" href="xv__hdmitx1__hw_8h.html#a374eee1fb3e859285b0e6deeb5cd3b7b">XV_HdmiTx1_ReadReg</a>.</p>

</div>
</div>
<a class="anchor" id="ab5ebe4123d67f311237f44d4db7fbb99"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XV_HdmiTx1_SetCallback </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_v___hdmi_tx1.html">XV_HdmiTx1</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="xv__hdmitx1_8h.html#af9b30d0cba10a37e4719114fe400ea64">XV_HdmiTx1_HandlerType</a>&#160;</td>
          <td class="paramname"><em>HandlerType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>CallbackFunc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>CallbackRef</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function installs an asynchronous callback function for the given HandlerType: </p>
<pre>
HandlerType              Callback Function Type
-----------------------  --------------------------------------------------
(XV_HDMITX1_HANDLER_HPD)   HpdCallback
(XV_HDMITX1_HANDLER_VS)    VsCallback
</pre><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>is a pointer to the HDMI TX core instance. </td></tr>
    <tr><td class="paramname">HandlerType</td><td>specifies the type of handler. </td></tr>
    <tr><td class="paramname">CallbackFunc</td><td>is the address of the callback function. </td></tr>
    <tr><td class="paramname">CallbackRef</td><td>is a user data item that will be passed to the callback function when it is invoked.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if callback function installed successfully.</li>
<li>XST_INVALID_PARAM when HandlerType is invalid.</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Invoking this function for a handler that already has been installed replaces it with the new handler. </dd></dl>

<p>References <a class="el" href="struct_x_v___hdmi_tx1.html#a1f62d35265c8e9575806e96d5dff4b5a">XV_HdmiTx1::BrdgLockedCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#add4ef24bbf855bdb99cbc895f3728080">XV_HdmiTx1::BrdgLockedRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a5ee28de741dedce0c80df05efc6b4393">XV_HdmiTx1::BrdgOverflowCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a93b678d829092eb3df9320b2e4e8872a">XV_HdmiTx1::BrdgOverflowRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a8d72f931c95c5dd096a95792dc005a2a">XV_HdmiTx1::BrdgUnderflowCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a72aa05a028a053c769c88887279c84c1">XV_HdmiTx1::BrdgUnderflowRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a41128322a34d6f217ffac92670003c9e">XV_HdmiTx1::BrdgUnlockedCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a070e92ea218d1165fda851951553b35a">XV_HdmiTx1::BrdgUnlockedRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a88195ea134a8be086cca6156bd5d87df">XV_HdmiTx1::CedUpdateCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a9bf336d986341f807a93dd7aa12d457f">XV_HdmiTx1::CedUpdateRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#aef6b3f6753d278df67f1c9803f667e08">XV_HdmiTx1::ConnectCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a99c1d407019995c9faedf34060140f35">XV_HdmiTx1::ConnectRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a2b619bbff33578107cf420cacecd2e18">XV_HdmiTx1::DscDecodeFailCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#ac635278b5e2faa35578d29830359877a">XV_HdmiTx1::DscDecodeFailRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#aa75eb56d2fcf4058da44bb2a2c3eba9b">XV_HdmiTx1::DynHdrMtwCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a027b1a92f27a2b2839254e3a69120fd1">XV_HdmiTx1::DynHdrMtwRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#ac495d5b8980b11427969918c7ea6eb56">XV_HdmiTx1::FrlConfigCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a26e0379b6c6b94faae7e5c52aec5e73e">XV_HdmiTx1::FrlConfigRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#ada61680a6092bdfeb4057cbd70e07584">XV_HdmiTx1::FrlFfeCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a23e3de569323bfc387f1f9e97f409fc1">XV_HdmiTx1::FrlFfeRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a9c4f784b98baa848eaba0f184e4f6cf8">XV_HdmiTx1::FrlLts1Callback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a7f5ad8e61c677bc4ac96e9673bde9e0d">XV_HdmiTx1::FrlLts1Ref</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a77f9f144ed1b1f0f406bbb8c671b0de3">XV_HdmiTx1::FrlLts2Callback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#ae463ce8fdabc072cd2200d87f5840900">XV_HdmiTx1::FrlLts2Ref</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a54f7b221e53ad112c54f2ef2ab77483a">XV_HdmiTx1::FrlLts3Callback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a7c82198d3afb1e336b5866f9a538cbda">XV_HdmiTx1::FrlLts3Ref</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#ab984cfb1fd3a88d5478b399a0e5ea2ea">XV_HdmiTx1::FrlLts4Callback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#aa5ebb5f0ac5d8311b724bc7c979f909a">XV_HdmiTx1::FrlLts4Ref</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a77650863384c1b134f3e8a26bb195d50">XV_HdmiTx1::FrlLtsLCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a78b99d681974d6fc18685eef62edad06">XV_HdmiTx1::FrlLtsLRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a346dde9dc2fb73ea526587978c14f493">XV_HdmiTx1::FrlLtsPCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#ac113465b484ed544caa647b3df1cf578">XV_HdmiTx1::FrlLtsPRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a4a76a4f44c11da6514bfcd2b366ee79a">XV_HdmiTx1::FrlStartCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a3676bc4ca72e0c3ac3695124574aa812">XV_HdmiTx1::FrlStartRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#abc1b2a59bc184f8461952572773a3b1d">XV_HdmiTx1::FrlStopCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a3e2dd2bf272b13923b08e8a811bdef8c">XV_HdmiTx1::FrlStopRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a4929690dcb3684990ea7cb5d2f6cb497">XV_HdmiTx1::StreamDownCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a29e2afefacc7fffc29d308d28eaa6cba">XV_HdmiTx1::StreamDownRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a01870b62d198af5f708b320a2339f9d3">XV_HdmiTx1::StreamUpCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#ac371f98870269cb29be2e43d48d3668e">XV_HdmiTx1::StreamUpRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a7be7f63d8a5bd9f54b4e186dc82820bc">XV_HdmiTx1::TmdsConfigCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#adf9d9f60674222a643f9ad7f0c8e4187">XV_HdmiTx1::TmdsConfigRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#af48a03329a29f3358af6bc289f510797">XV_HdmiTx1::ToggleCallback</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#ac0d8301d7b26b1c99874123b07e6be46">XV_HdmiTx1::ToggleRef</a>, <a class="el" href="struct_x_v___hdmi_tx1.html#a529cf861436423034baa776592647e3e">XV_HdmiTx1::VsCallback</a>, and <a class="el" href="struct_x_v___hdmi_tx1.html#a12a90e7a33dd7c9ca21603f82912b73d">XV_HdmiTx1::VsRef</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
	<p class="footer">&copy; Copyright 2015-2022 Xilinx, Inc. All Rights Reserved.</p>
	<p class="footer">&copy; Copyright 2022-2023 Advanced Micro Devices, Inc. All Rights Reserved.</p>
</div>
</body>
</html>
